using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Runtime.Serialization;
using System.Xml.Serialization;

namespace Cuahsi.Data.Interop.WaterML2.swe_20
{
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233")]
    [Serializable()]
    [DebuggerStepThrough()]
    [DesignerCategory("code")]
    [XmlType(Namespace = "http://www.opengis.net/swe/2.0")]
    [XmlRoot("Block", Namespace = "http://www.opengis.net/swe/2.0", IsNullable = false)]
    [DataContract(Name = "BlockType", Namespace = "http://www.opengis.net/swe/2.0")]
    public partial class BlockType : AbstractSWEType
    {

        private string compressionField;

        private string encryptionField;

        private string paddingBytesafterField;

        private string paddingBytesbeforeField;

        private string byteLengthField;

        private string refField;

        [XmlAttribute(DataType = "anyURI")]
        [DataMember()]
        public string compression
        {
            get
            {
                return this.compressionField;
            }
            set
            {
                this.compressionField = value;
            }
        }

        [XmlAttribute(DataType = "anyURI")]
        [DataMember()]
        public string encryption
        {
            get
            {
                return this.encryptionField;
            }
            set
            {
                this.encryptionField = value;
            }
        }

        [XmlAttribute("paddingBytes-after", DataType = "integer")]
        [DataMember()]
        public string paddingBytesafter
        {
            get
            {
                return this.paddingBytesafterField;
            }
            set
            {
                this.paddingBytesafterField = value;
            }
        }

        [XmlAttribute("paddingBytes-before", DataType = "integer")]
        [DataMember()]
        public string paddingBytesbefore
        {
            get
            {
                return this.paddingBytesbeforeField;
            }
            set
            {
                this.paddingBytesbeforeField = value;
            }
        }

        [XmlAttribute(DataType = "integer")]
        [DataMember()]
        public string byteLength
        {
            get
            {
                return this.byteLengthField;
            }
            set
            {
                this.byteLengthField = value;
            }
        }

        [XmlAttribute()]
        [DataMember()]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }
}